package com.atguigu.paymentdemo.service;

import java.io.IOException;
import java.security.GeneralSecurityException;
import java.util.HashMap;
import java.util.Map;

/**
 * @author longge
 * @Title:
 * @Description:
 * @date 2023/2/5 13:56
 */
public interface WxPayService {
    Map<String, Object> nativePay(Long productId) throws IOException;


    void processOrder(HashMap<String, Object> bodyMap) throws GeneralSecurityException;

    void cancelOrder(String orderNo) throws IOException;

    String queryOrder(String orderNo) throws IOException;

    void checkOrderStatus(String orderNo) throws IOException;

    void refund(String orderNo, String reason) throws IOException;

    String queryRefund(String refundNo) throws IOException;

    void checkRefundOrder(String refundNo) throws IOException;

    void processRefund(HashMap<String,Object> bodyMap) throws GeneralSecurityException;

    String queryBill(String billDate, String type) throws IOException;

    String downloadBill(String billDate, String type) throws IOException;
}
